const $app = getApp()
Page({
  data: {
    baseUrl: $app.baseUrl || null,
    iconData: $app.iconData || {},
    // ===== 参数 =====
    // oldPassword: null,
    newPassword: null,
    againPassword: null,
    isShow: false, // 是否显示密码
    error: null // 错误验证
    // ===== end =====
  },
  model (e) { $app.$common_wx.model(e, this) }, // 双向绑定
  // ========== 生命周期: 页面加载 ==========
  onLoad: function (options) {},
  // ========== 生命周期: 页面初次渲染完成 ==========
  onReady: function () {},
  // ========== 生命周期: 页面显示 ==========
  onShow: function () {},
  // ========== 生命周期: 页面隐藏 ==========
  onHide: function () {},
  // ========== 生命周期: 页面卸载 ==========
  onUnload: function () {},
  // ========== 保存 ==========
  save () {
    const param = this.data
    // 1 验证必填项
    let verify = {
      // oldPassword: '旧密码',
      newPassword: '新密码',
      againPassword: '确认密码',
    }
    this.setData({ error: null })
    for (const k in verify) {
      const val = param[k]
      if (!$app.$common.noNull(val)) {
        this.setData({ error: k })
        $app.$common.message(verify[k] + ' 不能为空', 'warning') // 提示信息
        return
      }
      if (val.length < 6 || val.length > 20) {
        $app.$common.message(verify[k] + ' 长度有误', 'warning') // 提示信息
        return
      }
    }
    if (param.againPassword !== param.newPassword) {
      $app.$common.message('两次密码输入不一致', 'warning') // 提示信息
      return
    }
    // 2 调接口
    $app.$common.openLoading() // 开启加载
    $app.$api.userinfo.updateUserinfo({
      password: param.newPassword,
      id: $app.userInfo.id
    }).then(({ data }) => {
      console.log('api-修改密码', data)
      $app.$common.closeLoading() // 关闭加载
      $app.$common.message('密码修改成功，请重新登录', 'success') // 提示信息
      wx.reLaunch({ url: '/pages/login/login' })
    }).catch((res) => {})
  }
})